1. Field of the Invention
The present invention relates to a learning method and system for a system control in a field of computer-aided design (CAD), and it particularly relates to the learning method and system where a control method varies automatically through a learning process.
2. Description of the Prior Art
In recent years, a very large scale integrated circuit (VLSI) is becoming far more complicated. Therefore, considering the fact that a process for designing the VLSI is ever complicated and the number of processes therefor is far increasing, automation of such design processes is indispensable as a tool for computer-aided design (CAD).
Among the conventional knowledge-based systems, a rule-based system represented by an expert system is widely in use. The expert system automatically controls each rule so that many useful rules can be made separately. Thus, the expert system as a whole is rather easy in terms architecture therefor. However, executability and applicability-thereof are not so desirable. In order to weaken such disadvantages, there is adopted a meta-rule which regulates how to choose a rule. This is why the meta-rule is often called a rule of rule. However, in the meta-rule method where examples of rules available are limited, there is necessitated a plenty of manpowers and man-months to accomplish a task therefor, thus making difficult a modification and maintenance of the meta-rule. For example, in a rule-based logic synthesis system, there are too many of the rules, so that interaction and effectiveness of each rule on a given circuit remains unclear. Therefore, a meta-rule for executing an optimum rule therefor need be re-designed, thus taking a long period of time overall.
Now, the rule-based system for logic optimization is a collection of rules and techniques to improve the circuit quality. Each rule is expressed as a pair such as a target graph and replacement graph. A rule is applied by identifying a portion of the circuit which contains a subgraph isomorhpic to the target graph, and replacing the subgraph with the replacement graph. Each rule application preserves a circuit functionality. For example, technology mapping from Boolean equations starts with a straightforward translation of the equations into gates in a library, and a circuit quality is improved through iterative application of rules.
Furthermore, there is now widely used a neural network system differing from the expert system in its entity. In the field of neural network, there are used several alternative terminologies such as neurocomputation, associative networks, collective computation and connectionism. Compared to the expert system, the neural network is particularly superior in handling exceptions and pattern recognition with relatively small and limited amount of rules.
The neural network, in principle, imitates neural cells and a simplest model therefor can be explained with reference to FIG. 1. As shown in FIG. 1, the neural network can be regarded as a plurality of neural cells or neurons which have a threshold value. A model neuron computes a weighted sum of its inputs from other units, and outputs a one or a zero, if the unit has a binary threshold, according to whether the sum is above or below a certain threshold. The neural network can be divided into a layer-structured neural network and a non-layer structured neural network. In the layer-structured neural network, a back-propagation method which is a learning algorithm is utilized and is suitable for a learning aspect. FIG. 2 shows a three-layer neural network comprising an input layer, an intermediate (hidden) layer and an output layer. In the back-propagation method, plural sets of input patterns and learning patterns are specified. The learning pattern is a target output pattern which is desired to be outputted when the input pattern paired to the learning pattern is inputted to an input layer. In the back-propagation method, weighted factors for a linkage between the layers are adjusted so that an actual output of the neural network becomes as close to the learning pattern as possible. However, such adjustment is iteratively performed to all available inputs as well as all learning patterns, so that the neural network alone consumes huge amount of time particularly for a large-scale problem.
There have also been attempts of using the neural network to provide a proper input to the expert system. However, there has been little study on using neural networks to control operation of rules in an expert-system. Yet in many rule-based systems, the meta-rules are often required to decide which of many possible rules should be used. Then, formation of the meta-rules most frequently requires much of trial-and-error adjustment by specialists, thus increasing the length of time necessary for building an expert system. For example, in an expert system using a neural network to rank backgammon playing rules, an expert was needed to manually rank the rules in a large number of possible game situations.